package com.qijian.business.domain.query;

import com.baomidou.mybatisplus.annotation.TableName;
import com.qijian.common.utils.mybatis.WhereType;
import com.qijian.common.utils.mybatis.WhereTypeEnum;
import lombok.Data;
import lombok.ToString;

import java.util.Date;
import java.util.Set;


/**
 * 产成品库存对象 查询条件类
 *
 * @author qijian
 * @date 2024-06-30
 */

@Data
@ToString
@TableName("im_production_inv")
public class ProductionInvQuery {

    @WhereType(filed = "project_id")
    private Long projectId;
    @WhereType(filed = "project_id", type = WhereTypeEnum.IN)
    private Set<Long> ids;
    @WhereType(filed = "project_machine_no", tableName = "mp", type = WhereTypeEnum.LIKE)
    private String projectMachineNo;
    @WhereType(filed = "bom_id")
    private Long bomId;
    @WhereType(filed = "item_name", tableName = "mi")
    private String itemName;

    @WhereType(filed = "item_name", tableName = "mi", type = WhereTypeEnum.LIKE)
    private String productName;
    @WhereType(filed = "status")
    private Long status;
    @WhereType(filed = "status_str")
    private String statusStr;
    @WhereType(filed = "check_time", type = WhereTypeEnum.BETWEEN)
    private Date[] checkTime;
    @WhereType(filed = "check_user_id")
    private Long checkUserId;
    @WhereType(filed = "store_in_time", type = WhereTypeEnum.BETWEEN)
    private Date[] storeInTime;
    @WhereType(filed = "store_in_user_id")
    private Long storeInUserId;
    @WhereType(filed = "factory_id")
    private Long factoryId;
    @WhereType(filed = "delivery_time", type = WhereTypeEnum.BETWEEN)
    private Date[] deliveryTime;
    @WhereType(filed = "dict_label", tableName = "sdd", type = WhereTypeEnum.LIKE)
    private String factoryName;


    @WhereType(ignore = true)
    // ALL_IN :已入库,ALL_OUT: 已发运,UN_OUT:待发运
    private String queryType;


}
